import { BaseOrgResultVO } from '/@/api/basic/user/model/baseOrgModel';
// 定义目标考核清单参数类型
export interface TaskTarget {
  sign: number;
}
export interface checklmportOV {
  data: boolean;
}
export interface TaskInterimTargetPageQuery {
  otherId?: string; // 租户ID
  targetDetail?: string; // 目标项目
  targetScore?: string; // 分值
  deadline?: string; // 截止时间
  targetType?: string; // 目标类型
  targetYear?: string; // 目标年份
  remarks?: string; // 备注
  state?: boolean; // 状态
  createdTenantId?: string; // 创建人租户ID
  updatedTenantId?: string; // 更新人租户ID
}

export interface TaskTargetTypeResultVO {
  list?: [];
  percentage?: string;
  targetSumScore?: string; // 分值
  targetType?: string; // 截止时间
}

export interface TaskInterimTargetResultVO {
  echoMap?: any;
  id?: string; // ID
  createdBy?: string; // 创建人id
  createdTime?: string; // 创建时间
  updatedBy?: string; // 更新人id
  updatedTime?: string; // 更新时间
  targetDetail?: string; // 目标项目
  score?: string; // 分值
  deadline?: string; // 截止时间
  targetType?: string; // 目标类型
  targetYear?: string; // 目标年份
  remarks?: string; // 备注
  state?: boolean; // 状态
  tenantId?: string; // 租户ID
  createdTenantId?: string; // 创建人租户ID
  updatedTenantId?: string; // 更新人租户ID
  isDefault?: boolean; //判断自评和最终
}

export interface BaseDictResultVO {
  // echoMap?: any;
  // id?: string; // ID
  // createdBy?: string; // 创建人id
  // createdTime?: string; // 创建时间
  // updatedBy?: string; // 更新人id
  // updatedTime?: string; // 更新时间
  // targetDetail?: string; // 目标项目
  // targetScore?: string; // 分值
  // deadline?: string; // 截止时间
  // targetType?: string; // 目标类型
  // targetYear?: string; // 目标年份
  // remarks?: string; // 备注
  // state?: boolean; // 状态
  otherId?: string; // 租户ID
  // createdTenantId?: string; // 创建人租户ID
  // updatedTenantId?: string; // 更新人租户ID
}

export interface UploadPdfResultVO {
  message: string;
  code: number;
  url: string;
  timestamp: string;
  bizType: string;
  bucket: string;
  storageType: string;
}
export interface UploadPdfResult {
  message: string;
  code: number;
  url: string;
  timestamp: string;
  bizType: string;
  bucket: string;
  storageType: string;
  // 其他的扩展参数
  data?: Recordable;
  // 后台用于接收file对象的参数名称
  name?: string;
  // file name
  file: File | Blob;
  // 传给后端的，文件名
  filename?: string;
  [key: string]: any;
}
export interface AppendixSaveVO {
  id?: string;
  bizId: string;
  bizType: string;
}
export interface userUpload {
  fileIds: string[];
  TenantId: number;
}
export interface UploadDetailById {
  id: string; //目标详情id
  otherId: string; //二级院部id
}
export interface UploadDetailByIdOV {
  materialResultVOList?: any; //上传支撑材料
  responseResultVO?: any; //评分
  id: string;
  targetType: string; //目标任务
  targetDetail: string; //项目描述
  percentage: string; //百分比
  targetScore: string; //分值
  deadline: string; //截止时间
  remarks: string; //评分依据
  score: string; //最终得分
}
export interface AppendixSaveVO {
  id?: string;
  bizId: string;
  bizType: string;
}

export interface FileResultVO extends AppendixSaveVO {
  id?: string;
  bizType: string;
  fileType: string;
  bucket: string;
  path: string;
  url: string;
  uniqueFileName?: string;
  fileMd5?: string;
  originalFileName: string;
  contentType: string;
  suffix: string;
  size: string;
  storageType?: string;
}
export interface TenantSaveDTO {
  name: string;
  code: string;
  abbreviation?: string;
  creditCode?: string;
  contactPerson?: string;
  contactPhone?: string;
  contactEmail?: string;
  provinceId?: string;
  provinceName?: string;
  cityId?: string;
  cityName?: string;
  districtId?: string;
  districtName?: string;
  address?: string;
  state?: boolean;
  createdName?: string;
  expirationTime?: string;
  describe?: string;
  logo?: string;
  logos?: FileResultVO[];
}
export interface Tenant {
  length: number;
  filter(arg0: (item: any) => boolean): Tenant;
  splice(index: unknown, arg1: number): unknown;
  findIndex(arg0: (item: any) => boolean): unknown;
  id: string;
  name: string;
  code: string;
  abbreviation: string;
  creditCode: string;
  contactPerson: string;
  contactPhone: string;
  contactEmail: string;
  provinceId: string;
  provinceName: string;
  cityId: string;
  cityName: string;
  districtId: string;
  districtName: string;
  address: string;
  registerType: string;
  connectType: string;
  status: string;
  state: boolean;
  readonly: boolean;
  createdName: string;
  reviewComments: string;
  expirationTime: string;
  describe: string;
  createdTime: string;
  createdBy: string;
  updatedTime: string;
  updatedBy: string;

  employeeState: boolean;
  isDefault: boolean;
  logo?: string;
  logos?: FileResultVO[];
  area?: string[];
  orgList?: BaseOrgResultVO[];
}
export interface DefDictSaveVO {
  targetState: string;
  targetId: string;
  score: string;
  // state: boolean;
  remarks: string;
  // sortValue: number;
}
